package alerts

import (
	"context"
	"devops-super/api/alerts/v1"
)

type IAlertOperateV1 interface {
	//GetSceneListByPeople 获取联系人关联的告警场景列表
	GetSceneListByPeople(ctx context.Context, req *v1.GetSceneListByPeopleReq) (res *v1.GetSceneListByPeopleRes, err error)
	//SetPeopleSceneRel 设置联系人关联的告警场景
	SetPeopleSceneRel(ctx context.Context, req *v1.SetPeopleSceneRelReq) (res *v1.SetPeopleSceneRelRes, err error)
	//GetPeopleListByScene 根据场景ID获取关联的联系人列表
	GetPeopleListByScene(ctx context.Context, req *v1.GetPeopleListBySceneReq) (res *v1.GetPeopleListBySceneRes, err error)
	//SetScenePeopleRel 设置场景关联的联系人
	SetScenePeopleRel(ctx context.Context, req *v1.SetScenePeopleRelReq) (res *v1.SetScenePeopleRelRes, err error)

	//GetSceneListByDevice 根据设备ID获取关联的告警场景列表
	GetSceneListByDevice(ctx context.Context, req *v1.GetSceneListByDeviceReq) (res *v1.GetSceneListByDeviceRes, err error)
	//SetDeviceSceneRel 设置设备关联的告警场景
	SetDeviceSceneRel(ctx context.Context, req *v1.SetDeviceSceneRelReq) (res *v1.SetDeviceSceneRelRes, err error)
	//GetDeviceListByScene 根据场景ID获取关联的设备列表
	GetDeviceListByScene(ctx context.Context, req *v1.GetDeviceListBySceneReq) (res *v1.GetDeviceListBySceneRes, err error)
	//SetSceneDeviceRel 设置场景关联的设备
	SetSceneDeviceRel(ctx context.Context, req *v1.SetSceneDeviceRelReq) (res *v1.SetSceneDeviceRelRes, err error)

	//GetSceneListByDeviceGroup 根据设备分组ID获取关联的告警场景列表
	GetSceneListByDeviceGroup(ctx context.Context, req *v1.GetSceneListByDeviceGroupReq) (res *v1.GetSceneListByDeviceGroupRes, err error)
	//SetDeviceGroupSceneRel 设置设备分组关联的告警场景
	SetDeviceGroupSceneRel(ctx context.Context, req *v1.SetDeviceGroupSceneRelReq) (res *v1.SetDeviceGroupSceneRelRes, err error)
	//GetDeviceGroupListByScene 根据场景ID获取关联的设备分组列表
	GetDeviceGroupListByScene(ctx context.Context, req *v1.GetDeviceGroupListBySceneReq) (res *v1.GetDeviceGroupListBySceneRes, err error)
	//SetSceneDeviceGroupRel 设置场景关联的设备分组
	SetSceneDeviceGroupRel(ctx context.Context, req *v1.SetSceneDeviceGroupRelReq) (res *v1.SetSceneDeviceGroupRelRes, err error)
}
